The invention relates generally to a component-based computing system having component aliases, and more particularly to component-based computing system having programmable components and component aliases for identifying and addressing computing components to be activated and referenced within an application.
Current component based programming systems implement a variety of different sets of functionality using different components to implement each variation of the programmable functionality. Developers who wish to simply alter one component to provide the additional functionality to a small subset of users typically are required to recompile a significant amount of code in order to assign a new class ID to the newly generated component that implements the new functionality. This need for recompiling components may exist even when the difference may be controlled in using run-time setting controlled using properties configured for the components. The issue preventing an easy reconfiguration of these components is the need for unique class IDs for each different variation of these components.
Because the class ID is currently stored within the binary version of a component, the above recompilation is required to change the class ID. In some situations, administrators may not have access to the source code for a component, especially where the component has been acquired or purchased from an external source. This fact has limited the ability to make new versions, and support multiple versions for a given component.
These problems can be eliminated by using an alias for a component that contains a different class ID than the original component. The alias, itself, can use the same binary representation of the component that simply controls the operation of the component using configuration data associated with the alias. The configuration data may be used to limit access to a component, or to enable, disable, and control the operation of functionality within the component when the component is activated. The alias may be treated as any other component that has its configuration data associated with its operation. The fact that the alias has its own unique class ID permits the alias to be treated as a separate component even when it simply uses the same binary version of an existing component. An alias thus permits the configuration data to be manipulated to achieve the desired behavior and functionality for the application.
The present invention relates to a code generation method, apparatus, and article of manufacture for providing a component-based computing system having programmable components and component aliases for identifying computing components for providing component addressing/identification and naming spaces.
The present invention solves the above-described problems by providing a computing system for activating a requested processing component initiated by a calling component within a local computing system. The computing system has a partition activation control module for receiving a request to activate a component initiated by a calling component and activating an instance of the requested component, a permit object activation module for determining whether an instance of the requested component may be activated, a component object alias activation module for substituting a unique component class ID for component alias class ID if the requested component corresponds to a component object alias, a system component catalog database for maintaining component object configuration data, and a component object activation module for activating the requested component.
Other embodiments of a system in accordance with the principles of the invention may include alternative or optional additional aspects. One such aspect of the present invention is a computer implemented method and corresponding computer data product of activating a requested processing component initiated by a calling component within a computing system. The method determines the identity of the requested processing component, including an identity of a unique component class ID and an identity of a partition from a request to activate a component initiated by a calling component and obtains configuration data for the requested component, the configuration data comprises one or more component parameters for the requested component. If the configuration data indicates that the requested component is a component object alias, the method substitutes the unique component class ID for a component alias class ID and activates an instance of the requested component.